package com.team9.fitness.entity;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;

/**
 * 评论点赞实体
 * 
 * 记录用户对评论的点赞状态：
 * - 关联信息：用户ID、评论ID
 * - 状态信息：点赞状态、操作时间
 * - 用于统计评论的点赞数量和用户点赞状态
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class CommentLike {

    private Long id;

    /**
     * 用户ID
     */
    private Long userId;

    /**
     * 评论ID
     */
    private Long commentId;

    /**
     * 点赞状态：true-已点赞，false-取消点赞
     */
    private Boolean isLiked;

    /**
     * 操作时间
     */
    private LocalDateTime createdAt;

    public void setCreatedAtIfNull() {
        if (createdAt == null) {
            createdAt = LocalDateTime.now();
        }
    }
}
